<?php

declare(strict_types=1);

namespace App\Entity;

use App\Models\Contract as ContractModel;

class ContractEntity extends ABaseEntity
{
    public function __construct(ContractModel $model = null)
    {
        if ($model === null) {
            $model = new ContractModel();
        }
        $this->model = $model;
    }

    //id
    public function getId(): int
    {
        return $this->model->id;
    }

    public function setId(int $id): void
    {
        $this->model->id = $id;
    }

    //code
    public function getCode(): string
    {
        return $this->model->code;
    }

    public function setCode(string $code): void
    {
        $this->model->code = $code;
    }

    //type
    public function getType(): int
    {
        return $this->model->type;
    }

    public function setType(int $type): void
    {
        $this->model->type = $type;
    }

    //party_a_id
    public function getPartyAId(): int
    {
        return $this->model->party_a_id;
    }

    public function setPartyAId(int $partyAId): void
    {
        $this->model->party_a_id = $partyAId;
    }

    //party_b_id
    public function getPartyBId(): int
    {
        return $this->model->party_b_id;
    }

    public function setPartyBId(int $partyBId): void
    {
        $this->model->party_b_id = $partyBId;
    }

    //sign_date
    public function getSignDate(): int
    {
        return $this->model->sign_date;
    }

    public function setSignDate(int $signDate): void
    {
        $this->model->sign_date = $signDate;
    }

    //start_date
    public function getStartDate(): int
    {
        return $this->model->start_date;
    }

    public function setStartDate(int $startDate): void
    {
        $this->model->start_date = $startDate;
    }

    //end_date
    public function getEndDate(): int
    {
        return $this->model->end_date;
    }

    public function setEndDate(int $endDate): void
    {
        $this->model->end_date = $endDate;
    }

    //insurance_amount
    public function getInsuranceAmount()
    {
        return $this->model->insurance_amount;
    }

    public function setInsuranceAmount($insuranceAmount): void
    {
        $this->model->insurance_amount = $insuranceAmount;
    }

    //amount
    public function getAmount(): int
    {
        return $this->model->amount;
    }

    public function setAmount(int $amount): void
    {
        $this->model->amount = $amount;
    }

    //content
    public function getContent(): string
    {
        return $this->model->content;
    }

    public function setContent(string $content): void
    {
        $this->model->content = $content;
    }

    //electronic_url
    public function getElectronicUrl(): string
    {
        return $this->model->electronic_url;
    }

    public function setElectronicUrl(string $electronicUrl): void
    {
        $this->model->electronic_url = $electronicUrl;
    }

    //picture_url
    public function getPictureUrl(): string
    {
        return $this->model->picture_url;
    }

    public function setPictureUrl(string $pictureUrl): void
    {
        $this->model->picture_url = $pictureUrl;
    }

    //sign_person
    public function getSignPerson(): string
    {
        return $this->model->sign_person;
    }

    public function setSignPerson(string $signPerson): void
    {
        $this->model->sign_person = $signPerson;
    }

    //sign_city
    public function getSignCity(): int
    {
        return $this->model->sign_city;
    }

    public function setSignCity(int $signCity): void
    {
        $this->model->sign_city = $signCity;
    }

    //sign_contact_person
    public function getSignContactPerson(): string
    {
        return $this->model->sign_contact_person;
    }

    public function setSignContactPerson(string $signContactPerson): void
    {
        $this->model->sign_contact_person = $signContactPerson;
    }

    //sign_contact_phone
    public function getSignContactPhone(): string
    {
        return $this->model->sign_contact_phone;
    }

    public function setSignContactPhone(string $signContactPhone): void
    {
        $this->model->sign_contact_phone = $signContactPhone;
    }

    //sign_remarks
    public function getSignRemarks(): string
    {
        return $this->model->sign_remarks;
    }

    public function setSignRemarks(string $signRemarks): void
    {
        $this->model->sign_remarks = $signRemarks;
    }

    //create_time
    public function getCreateTime(): int
    {
        return $this->model->create_time;
    }

    public function setCreateTime(int $createTime): void
    {
        $this->model->create_time = $createTime;
    }

    //creator_id
    public function getCreatorId(): int
    {
        return $this->model->creator_id;
    }

    public function setCreatorId(int $creatorId): void
    {
        $this->model->creator_id = $creatorId;
    }

    //creator_realname
    public function getCreatorRealname(): string
    {
        return $this->model->creator_realname;
    }

    public function setCreatorRealname(string $creatorRealname): void
    {
        $this->model->creator_realname = $creatorRealname;
    }
}
